Memory modules come in a variety of configurations depending on a given application and desired storage capacity. For high-capacity memory modules that utilize significant numbers of memory devices, a buffered architecture is often employed. The buffered approach buffers data transferred between the memory devices and a memory controller, thus reducing loading of a data bus to the relatively few buffer devices, rather than the high number of memory devices. Address and control busses are also typically buffered in these systems.
Conventional buffered memory systems employ primary data paths between the memory controller and buffer(s), and secondary data paths between the buffer(s) and the memory devices. The primary and secondary paths transfer data at the same rate. While this may work adequately for some applications, there may be unused bandwidth if both the primary and secondary buses are locked to the same transfer rate.